Параметры
description | MaterialDescription, описывающий импортированные свойства и анимацию камеры. |
material | Материал, созданный модулем импорта моделей. |
animations | Анимационные клипы, сгенерированные модулем импорта моделей. |
Описание
Добавьте эту функцию в подкласс, чтобы получать уведомления при импорте материала из средства импорта моделей.
Unity вызывает эту функцию, только если для параметра ModelImporter.materialImportMode установлено значение ModelImporterMaterialImportMode.ImportViaMaterialDescription. Эта функция позволяет управлять свойствами материала и анимацией в процессе импорта модели. Структура MaterialDescription содержит все данные о материалах из импортированного файла. Вы можете использовать его для заполнения материалов и анимационных клипов.
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
using UnityEditor.AssetImporters;
public class CreateMaterialFromMaterialDescription : AssetPostprocessor
{
public void OnPreprocessMaterialDescription(MaterialDescription description, Material material, AnimationClip[] materialAnimation)
{
var shader = Shader.Find("Standard");
if (shader == null)
return;
material.shader = shader;
List props = new List();
// list the properties of type Vector4 :
description.GetVector4PropertyNames(props);
Debug.Log(props);
// Read a texture property from the material description.
TexturePropertyDescription textureProperty;
if (description.TryGetProperty("DiffuseColor", out textureProperty))
{
// Assign the texture to the material.
material.SetTexture("_MainTex", textureProperty.texture);
}
}
}